$(function() {
  console.log('in subject.js');
  var isModify = false; //是否修改了数据

  $('#spError').hide();

  $('#btnAdd').click(function() {
    if (dataService.trim($('#txtSname').val()) == '') {
      $('#txtSname').focus();
      $('#spError').html('名称必须填写');
      $('#spError').show();
      return;
    }
    $('#spError').hide();

    mydialog.showWait('数据中...', '等待');
    dataService.send(
      '/tbSubject/save',
      {
        'tbSubject.sname': $('#txtSname').val(),
        'tbSubject.description': $('#txtDescription').val()
      },
      function(data) {
        mydialog.hideWait();
        if (data.success) {
          $('#txtSname').val('');
          $('#txtDescription').val('');
          query();
          return;
        }
        mydialog.showAlert(data.message, '信息');
      }
    );
  });

  $('#btnBack').click(function() {
    location.href = 'main.html';
  });

  //默认分页信息
  var page = { pageSize: 5, pageNumber: 1 };

  $('#btnPre').click(function() {
    page.pageNumber = page.pageNumber - 1;
    if (page.pageNumber <= 0) {
      page.pageNumber = 1;
      return;
    }
    query();
  });

  $('#btnNext').click(function() {
    page.pageNumber = page.pageNumber + 1;
    if (page.pageNumber > page.pageCount) {
      page.pageNumber = page.pageCount;
      return;
    }
    query();
  });

  function query() {
    mydialog.showWait('查询数据中...', '等待');
    dataService.send(
      '/tbSubject/queryAll',
      {
        'page.pageSize': page.pageSize,
        'page.pageNumber': page.pageNumber
      },
      function(data) {
        mydialog.hideWait();
        console.log(data);
        if (!data.success) {
          mydialog.showAlert(data.message, '信息');
          return;
        }
        page = data.dataMap.page; //更新为服务器返回的分页信息
        $('#spPage').html(
          page.total + '/' + page.pageNumber + '/' + page.pageCount
        );
        $('#tbData').html('');
        $.each(data.dataMap.list, function(i, v) {
          var $tr = $(document.createElement('tr'));
          var $td;

          $td = $(document.createElement('td'));
          $td.append(v.sid);
          $tr.append($td);

          $td = $(document.createElement('td'));
          $td.append(v.sname);
          $tr.append($td);

          $td = $(document.createElement('td'));
          $td.append(v.isEnable == 'y' ? '启用中' : '停用中');
          $tr.append($td);

          $td = $(document.createElement('td'));
          $td.append(v.description);
          $tr.append($td);

          var $span;
          $td = $(document.createElement('td'));
          $td.attr('class', 'text-center');

          $span = $(document.createElement('span'));
          $span.attr('class', 'btn btn-danger');
          $span.css('margin', '2px');
          $span.append('修改');
          $span.click(function() {
            isModify = false;
            $('#txtSid').val(v.sid);
            $('#txtUsname').val(v.sname);
            $('#txtUdescription').val(v.description);
            $('#selEnable').val(v.isEnable);

            mydialog.showCustom($('#dialogModify'), '修改数据', function() {
              if (isModify) {
                query();
              }
            });
          });
          $td.append($span);

          $span = $(document.createElement('span'));
          $span.attr('class', 'btn btn-danger');
          $span.css('margin', '2px');
          $span.append('删除');
          $span.click(function() {
            toDelete(v);
          });
          $td.append($span);

          $tr.append($td);

          $('#tbData').append($tr);
        });
      }
    );
  }

  function toDelete(subject) {
    mydialog.showConfirm('是否删除' + subject.sname + '?', '确认', function() {
      mydialog.showWait('删除数据处理中。。。', '等待');
      dataService.send(
        '/tbSubject/delete',
        { 'tbSubject.sid': subject.sid },
        function(data) {
          mydialog.hideWait();
          mydialog.showAlert(data.message, '信息', function() {
            if (data.success) {
              page.pageNumber = 1;
              query();
            }
          });
        }
      );
    });
  }

  $('#btnUpdate').click(function() {
    mydialog.showWait('数据处理中...', '等待');
    dataService.send(
      '/tbSubject/update',
      {
        'tbSubject.sid': $('#txtSid').val(),
        'tbSubject.isEnable': $('#selEnable').val(),
        'tbSubject.sname': $('#txtUsname').val(),
        'tbSubject.description': $('#txtUdescription').val()
      },
      function(data) {
        mydialog.hideWait();
        mydialog.showAlert(data.message, '信息', function() {
          if (data.success) {
            isModify = true;
            mydialog.hideCustom();
            query();
          }
        });
      }
    );
  });

  $('#btnCloseUpdate').click(function() {
    mydialog.hideCustom();
  });

  query();
});
